package com.k.Exception;
/**
 * 方法覆盖中异常的使用
 *
 * 父类中方法抛出异常，子类中可以不抛出异常
 * 子类中的方法，不能抛出比父类或接口更宽的异常，只能抛出和父类中相同的异常或者是该异常的子类
 * 在父类类型指向子类对象的过程中，方法的异常显示的是父类的异常，如果子类的异常范围比父类宽，则造成
 * 异常无法抛出
 * */
public class TestOverrideException {
    public static void main(String[] args) {
        Super super1=new Sub();
        try {
            super1.s1();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
class Super{
    public void s1() throws Exception{
        System.out.println("--Super.s1()--");
    }
}
class Sub extends Super{
    @Override
    public void s1(){
        System.out.println("--Sub.s1()--");
    }
}